A peripheral device or computer device that is communicatively linked to another computer device can be implemented for data communication via more than one wired and/or wireless communication protocol, such as via USB, TCP/IP, BLUETOOTH, Wi-Fi, and the like. A peripheral device, such as a printer, a data phone, or another computer device can be implemented to layer data communication protocols for different service technologies within the device, typically because one may be dependent on another. For example a network printer service can be dependent on a networking stack component, and before a computer device can interact with a component at the top of the layered component stack, all of the components need to be configured, provisioned, and operational.
Connecting a peripheral device to a computer device using a single data communication protocol and/or communication link is typically straightforward. The computer device can first recognize or discover the peripheral device, and then the communication link between the peripheral device and computer is configured. The communication link can be configured by optionally exchanging security credentials, provisioning the device with settings, and/or persisting information about the communication link. Some peripheral devices, however, can include multiple communication protocols and/or communication link technologies.
In some implementations, the different communication link technologies are implemented in parallel such that each transport can independently communicate data. For example, a peripheral device can implement both a USB and a BLUETOOTH communication link, and both can be used to communicate data and transfer files. In other implementations, different communication link technologies are stacked vertically (e.g., in series as stacked transports) and may be needed for a computer device to utilize the peripheral device. Access to the functionality of a peripheral device may be enabled by the use or dependence on vertically stacked technologies, and this may include a simplified configuration or additional functions of a device. For example, a wireless printer can include a Wi-Fi communication link, utilize WLAN Protected Setup (WPS) for discovery and configuration of WLAN settings, and implement a print configuration for discovery and configuration of printer settings (e.g., when printing a document utilizes both Wi-Fi and the print configuration).
For peripheral devices that are implemented to utilize stacked transports, a user may need to understand and manage the complex relationships between the various communication link technologies that a device employs, and ensure that the communication link technologies are properly configured. The user may also need to execute different process flows to discover and configure the different communication link technologies of a peripheral device. Further, it may not be clear to a user as to which components need to be configured and/or how to configure them.